Disabling SMT/Hyper-Threading for Better Latency | XBitLabs

2022-06-18 22:56:18 By : Mr. Eric Chen

When it comes to game performance it is important to understand that although of great significance FPS is not the only measure you should be looking at. Another measurement that is as important as FPS (in my subjective opinion) is latency or how fast your PC executes inputs from your peripherals.

Better latency in simple terms translates to better inputs and a closer 1-to-1reaction of your in-game character to your real-time movement. We have already discussed ways in which you can decrease latency (custom Windows ISO, CMD commands, power plans, etc) and today I have tested another method through which you can shave off some milliseconds.

SMT (AMD) and Hyper-Threading (Intel) are technologies that allow more than one thread to run on each core allowing CPUs to be more efficient during their workloads. This is why most modern CPUs are described with a number of cores and threads (ex: my 5600X has 6 cores and 12 threads).

An unfortunate byproduct of these technologies is that in some cases a task is split between cores on different threads adding latency to whatever you are doing on your PC. This is a big drawback in competitive gaming where you want your inputs to translate as quickly as possible to in-game actions.

This is an overly simplified version of what these technologies do, but for the purpose of this article it is enough to understand a simple equation: SMT/Hyper-Threading ON = possibly better FPS and performance – while – SMT/Hyper-Threading OFF = better latency in games. In essence, I was curious how big would the difference in FPS be for gaming and how measurable would the difference in latency be if I would turn off SMT (since I have an AMD system) on my PC.

The way I tested latency with SMT on and off was LatencyMon since this is a very popular tool exactly for this task. I ran the benchmark 3 times for both SMT on and off and restarted each time to make sure the system is fresh.

I have also made sure to have no background applications running to have the closest possible result to a perfect scenario.

For the game testing, I have decided to use Apex Legends since this game is known for being a multi-threaded hog, allowing me to see how the game will behave if suddenly the extra threads are gone and it can only run with 1 thread per 1 core.

The test itself was a repetition of tasks in the training range since it is a controlled environment. Since this was not a proper benchmark the results are not 100% accurate but considering the results I have recorded and that the actions were repeated with consistency I am about 95% sure of the repeatability of the final results.

All of this was carried out on my PC which is running a PBO2 + Curve Optimizer overclock on my 5600X and my RTX 2070 which is overclocked and also is de-shrouded. I am also running a custom Windows install called KernelOS (1809) so my system is already tweaked out pretty hard.

The first thing I tested with SMT was LatencyMon where the results after 3 measurements were between 2.75us and 2.8us.

These results were consistent with all the other previous testing I have done on my system which did not surprise me at all.

In Apex I did the same set of actions 3 times as described in the methodology while measuring and recording the FPS using MSI Afterburner and RivaTuner. The settings in Apex were 1920×1080, 110 FOV, with every other setting on low for maximum FPS.

As you can see the results were all within the margin of error telling me that my set of actions repeated in the firing range can be considered a valid benchmark.

After going to the BIOS of my PC and disabling SMT I have started my second round of testing with restarts between each run of LatencyMon and all the other steps to ensure the validity of my results.

In LatencyMon with no background applications running the latency went down to 2.45us – 2.5us compared to the 2.75us and 2.8us.

Although I have measured a notable drop in my latency it was interesting that in Apex my FPS did not change at all and was all within the margin of error.

The conclusion here is pretty simple then – I have achieved lower latency without impacting my performance in my game of choice which is a net positive overall.

The limitations of my little study here are obvious – I have used only LatencyMon to measure the latency changes and have only used a single game (3 runs each to get a stable average). Moreover, since my system is running an AMD CPU I was not able to test the same process on an Intel system.

At the same time, my findings are consistent with most other PC tweakers that have experimented with this subject on different platforms.

The common conclusion is that for gaming, turning off SMT/Hyper-Threading might lead to a small loss in FPS (depending on the game engine and optimizations) while for workload tasks this will lead to a substantial loss in performance.

Since I am mainly interested in gaming I would say that turning off SMT/Hyper-Threading and lowering your latency is worth losing some FPS, especially if after running some tests you lose none like in the case of Apex.

While turning off SMT/Hyper-Threading might hinder your performance in work-oriented tasks if you are a competitive gamer like myself and you want the best possible latency, turning off SMT/Hyper-Threading is a step in the right direction.

The decrease in latency is clear while the drop in FPS and performance will depend on individual games and optimizations. At the same time as other reputable sources have noted “in gaming, overall there was no difference between SMT On and SMT Off, however, some games may show differences in CPU limited scenarios” (source) which then leads to my conclusion.

As a competitive gamer, you should turn off core virtualization for the benefit of lower latency. The only time this advice should not apply is when you can measure a huge difference in FPS in your game of choice which then renders it unplayable.

Custom Windows ISO enjoyer, FPS optimizer, and aim improvement enthusiast. Will disassemble all of his peripherals (and sometimes PC parts) to mod them even if all of them work perfectly fine. Overall, Chris is a BIG nerd and he is absolutely proud of it! Follow him on Twitch.

Custom crosshairs are not a new thing in games and will probably continue to be used simply because there are game devs out there that do not understand that most people want a simple cross or a dot in the middle of their screen that they can reliably use to shoot at people’s heads. I […]

A lot of the FPS games we play use a setting called FOV which allows you to tweak how much of the observable world you can see at any given moment. In simple terms, it either makes your field of view (FOV) wider or shallower depending on your preference and play style. This is an […]

If you play multiple FPS games you might have already been in a situation where you wanted to know how to transfer your current mouse sensitivity across games. If you have great aim and mouse control this might be a less relevant idea since you can play on a wide range of sensitivities, but even […]

In the spirit of min-maxing everything related to gaming (latency, power plans, using fewer resources while playing music, etc) there is another neat trick that you can try to save even more resources while using Steam. Considering that Steam is the most popular platform for buying and playing games this might be useful for quite […]

I think I will be speaking for all of us gamers when I say that there is nothing quite as annoying as random freezes or FPS drops while you are trying to enjoy your gaming hours. To achieve the best possible gaming experience people can go looking for drastic tweaks like custom Windows installs, latency […]

Competitive gaming requires a certain amount of specialization when it comes to the hardware you are using just like in any other professional sport. In this case though instead of buying sports equipment, you are buying gaming hardware and peripherals that will allow you to unlock your full potential in games. One of the most […]